package com.quan.mall.service;

import com.quan.mall.commons.vo.PmsCategoryVo;
import com.quan.mall.entity.PmsCategory;
import com.quan.commons.core.utils.PageUtils;
import com.quan.commons.core.biz.support.MyBaseService;

import java.util.List;

/**
 * 商品-三级分类
 *
 * @author yhaoquan
 * @email yhaoquan@163.com
 * @date 2021-02-09 11:44:02
 */
public interface PmsCategoryService extends MyBaseService<PmsCategory> {

    /**
     * 列表查询
     * @param vo
     * @return
     */
    public List<PmsCategoryVo> queryList(PageUtils pageUtils, PmsCategoryVo vo) ;

    /**
     * 分页查询
     * @param pageUtils
     * @param vo
     * @return
     */
    public PageUtils queryPage(PageUtils pageUtils, PmsCategoryVo vo);

    /**
     * 查询出所有分类以及子分类，以树形结构组装起来列表
     * @return
     */
    List<PmsCategoryVo> listWithTree();

    /**
     * 根据ID获取父类路径ID
     * @param categoryId
     * @return
     */
    public Long[] findCategoryPath(Long categoryId);

    /**
     * 修改，并修改关联的数据
     * @param category
     */
    public void updateCascade(PmsCategory category);
}

